#include <stdlib.h>
#include <stdio.h>

struct Tree;
Tree* Init();
int Insert(void*, Tree*, int(*cmp)(void*, void*));
int Remove( Tree *tree, int (*hit)( void *));
void *Find( Tree *tree, int (*hit)( void *));
void Delete(Tree*);
void PrintTree(Tree*, void (*toString)(void*));